/**
 * Created by zhulizhe on 2017/9/7.
 */

// let t = '999' ;
//
//
// let x = t ;
// let b = t.split('').join('') ;
// console.log(x);
// b = b + 1 ;
// console.log(x);
// console.log(b);


// proxy
// function set(target, key, value, receiver) {
//     if(key in target){
//         const result = Reflect.set(target, key, value, receiver);
//         queuedObservers.forEach(observer => observer(key,value));
//         return result;
//     }
// }
//
// const queuedObservers = new Set();
//
// const observe = fn => queuedObservers.add(fn);
// const observable = obj => new Proxy(obj, {set});
//
//
// let person = {
//     name:'007'
// } ;
// let proxyP = observable(person) ;
//
// observe((key,value)=>{
//     console.log(key + ' change to '+ value) ;
// })
//
// proxyP.name = 'Cross' ;
// proxyP.age = 30 ;
//
// let userInfo = {
//     userName:'Cross',
//     icon:null
// }
//
// let userP = new Proxy(userInfo,{
//     get:(target,props)=>{
//         if(target[props] == null){
//             return 'no data'
//         }
//         return target[props];
//     }
// })
//
// console.log(userP.icon);


// const list = ['Cross','Lucy','Lily']
//
//
// function test() {
//     for(let name of list){
//         console.log(name);
//         if(name=='Lucy')return;
//     }
// }

// var http     = require('http');
// var schedule = require("node-schedule");
//
// function httpGet(){
//     var uri = `http://120.25.169.8/before/index`;
//     http.get(uri, function(res) {
//         console.log("访问个人微博状态码: " + res.statusCode);
//     }).on('error', function(e) {
//         console.log("个人微博 error: " + e.message);
//     });
// }

// let userInfo = {
//     userName:'Cross',
//     icon:null
// }
//
// let userP = new Proxy(userInfo,{
//     get:(target,props)=>{
//         if(target[props] == null){
//             return 'no data'
//         }
//         return target[props];
//     }
// })
//
// console.log(userP.icon);

// let express = ()=>{
//
//     let funs = [] ;
//     let app = (res,req)=>{
//         let i = 0 ;
//         let next = (res,req,next)=>{
//             let task = funs[i++] ;
//             if(!task)return;
//             task(res,req,next);
//         }
//         next();
//     };
//
//     app.use = (func)=>{
//         funs.push(func);
//     }
//     return app ;
// }
//
//
// var date = new Date(2016,6,13,15,50,0);
// schedule.scheduleJob(date, function(){
//     httpGet();
// });

// var isType = function (obj) {
//     var str = Object.prototype.toString.call(obj);
//     var type = str.slice(8, str.length - 1);
//     return type;
// }


// var deepExtend = function (target, source) {
//     // 检测参数
//     if (!source || arguments.length !== 2) {
//         throw new Error("参数错误")
//     }
//     var sourceType = isType(source),
//         targetType = isType(target);
//
//     // 基本类型
//     if(targetType !== "Object" && targetType !== "Array" && targetType !== "Function") {
//         target =  {};
//     }
//
//     if(sourceType !== "Object" && sourceType !== "Array" && sourceType !== "Function") {
//         return target =  {};
//     }
//
//
//     // 遍历源对象中的属性
//     for (var property in source) {
//         var copy = source[property];
//         if (source === copy) { continue; }
//         // 将源对象中的属性复制到目标对象中
//         if (isType(copy) === "Object") {
//             // 递归
//             target[property] = arguments.callee(target[property] || {}, copy);
//         } else if (isType(copy) === "Array") {
//             // 递归
//             target[property] = arguments.callee(target[property] || [], copy);
//         } else {
//             target[property] = copy;
//         }
//     }
//     // 返回目标对象
//     return target;
// }

// let person = {
//     name:'Cross',
//     age:30
// }

// let num = '13220168837' ;

// let p1 = deepExtend({},num);
//
// let p2 = num.substr(0,3) + '-' + num.substr(3,4) + '-' + num.substr(8,4) ;
// // p1.age = 28 ;
// console.log(p2);
// console.log(p1);

// function toThousands(num) {
//     var num = (num || 0).toString(), result = '';
//     while (num.length > 3) {
//         result = ' ' + num.slice(-3) + result;
//         num = num.slice(0, num.length - 3);
//     }
//     if (num) { result = num + result; }
//     return result;
// }
//
//
// console.log(toThousands(num));

// let p = '13220168837'.replace(/(\d{3})(\d{4})/,"$1-$2-");
// console.log(p);


